3.1.2 Komprimert omkoding - inrange
I tillegg til inlist, finnes det en annen logisk funksjon som kan gjøre det lettere å lage betingelser basert på intervaller: inrange.
If-betingelser som baserer seg på intervaller blir sjeldent særlig lange, siden man som oftest bare trenger å spesifisere en minimums- og en maksimumsverdi. Men dersom man opererer med flere intervaller i ett og samme if-uttrykk, kan inrange være nyttig. Uansett blir generate- evt. replace-uttrykket mer komprimert i forhold til vanlige if-uttrykk ved bruk av denne funksjonen.
Den logiske funksjonen inrange settes til 1 ("true") dersom verdien i det første argumentet er høyere enn eller lik verdien i det andre argumentet og lavere enn eller lik verdien i det tredje argumentet.
Argumentene til funksjonen kan være både variabler og verdier (alle typer).
Eksempel:
generate var = 1 if inrange(formue, 500000, 1000000)(inrange-funksjonen = 1 ("true") dersom formue er større enn eller lik 500000 og mindre enn eller lik 1000000)
Eksempelet over tilsvarer dette uttrykket:
generate var = 1 if formue >= 500000 & formue <= 1000000